package com.brzjomo.secretiveworld.init;

import com.brzjomo.secretiveworld.SecretiveWorld;
import com.brzjomo.secretiveworld.entity.passive.fish.SwordFishEntity;
import com.brzjomo.secretiveworld.object.item.CrowbarItem;
import com.brzjomo.secretiveworld.object.item.ModMusicDiscDesc2Item;
import com.brzjomo.secretiveworld.object.item.ModMusicDiscItem;
import com.brzjomo.secretiveworld.object.item.ModSpawnEggItem;
import com.brzjomo.secretiveworld.object.item.SacrificialKnifeItem;
import com.brzjomo.secretiveworld.object.item.SealItem30782;
import com.brzjomo.secretiveworld.object.item.WorldRoamBookItem;

import net.minecraft.item.AxeItem;
import net.minecraft.item.BlockItem;
import net.minecraft.item.HoeItem;
import net.minecraft.item.Item;
import net.minecraft.item.Item.Properties;
import net.minecraft.item.ItemTier;
import net.minecraft.item.PickaxeItem;
import net.minecraft.item.Rarity;
import net.minecraft.item.ShovelItem;
import net.minecraft.item.SwordItem;
import net.minecraftforge.fml.RegistryObject;
import net.minecraftforge.registries.DeferredRegister;
import net.minecraftforge.registries.ForgeRegistries;

public class ModItems {
	@SuppressWarnings("deprecation")
	public static final DeferredRegister<Item> ITEMS = new DeferredRegister<>(ForgeRegistries.ITEMS,
			SecretiveWorld.MODID);

	// Ore_Items
	public static final RegistryObject<Item> COPPER_INGOT = ITEMS.register("copper_ingot",
			() -> new Item(new Item.Properties().group(ModItemGroups.MOD_ITEM_GROUP_MATERIAL)));

	public static final RegistryObject<Item> COPPER_NUGGET = ITEMS.register("copper_nugget",
			() -> new Item(new Item.Properties().group(ModItemGroups.MOD_ITEM_GROUP_MATERIAL)));

	public static final RegistryObject<Item> SILVER_INGOT = ITEMS.register("silver_ingot",
			() -> new Item(new Item.Properties().group(ModItemGroups.MOD_ITEM_GROUP_MATERIAL)));

	public static final RegistryObject<Item> SILVER_NUGGET = ITEMS.register("silver_nugget",
			() -> new Item(new Item.Properties().group(ModItemGroups.MOD_ITEM_GROUP_MATERIAL)));

	public static final RegistryObject<Item> MITHRIL_INGOT = ITEMS.register("mithril_ingot",
			() -> new Item(new Item.Properties().group(ModItemGroups.MOD_ITEM_GROUP_MATERIAL)));

	public static final RegistryObject<Item> MITHRIL_NUGGET = ITEMS.register("mithril_nugget",
			() -> new Item(new Item.Properties().group(ModItemGroups.MOD_ITEM_GROUP_MATERIAL)));

	public static final RegistryObject<BlockItem> COPPER_ORE = ITEMS.register("copper_ore",
			() -> new BlockItem(ModBlocks.COPPER_ORE.get(),
					new Item.Properties().group(ModItemGroups.MOD_ITEM_GROUP_BUILDING_BLOCK)));

	public static final RegistryObject<BlockItem> SILVER_ORE = ITEMS.register("silver_ore",
			() -> new BlockItem(ModBlocks.SILVER_ORE.get(),
					new Item.Properties().group(ModItemGroups.MOD_ITEM_GROUP_BUILDING_BLOCK)));

	public static final RegistryObject<BlockItem> COPPER_BLOCK = ITEMS.register("copper_block",
			() -> new BlockItem(ModBlocks.COPPER_BLOCK.get(),
					new Item.Properties().group(ModItemGroups.MOD_ITEM_GROUP_BUILDING_BLOCK)));

	public static final RegistryObject<BlockItem> SILVER_BLOCK = ITEMS.register("silver_block",
			() -> new BlockItem(ModBlocks.SILVER_BLOCK.get(),
					new Item.Properties().group(ModItemGroups.MOD_ITEM_GROUP_BUILDING_BLOCK)));

	public static final RegistryObject<BlockItem> MITHRIL_BLOCK = ITEMS.register("mithril_block",
			() -> new BlockItem(ModBlocks.MITHRIL_BLOCK.get(),
					new Item.Properties().group(ModItemGroups.MOD_ITEM_GROUP_BUILDING_BLOCK)));

	// Interactive_Blocks
	public static final RegistryObject<BlockItem> DRY_NET = ITEMS.register("dry_net",
			() -> new BlockItem(ModBlocks.DRY_NET.get(),
					new Item.Properties().group(ModItemGroups.MOD_ITEM_GROUP_INSTRUMENT)));

	// Building_Blocks
	public static final RegistryObject<BlockItem> STONE_BRAZIER = ITEMS.register("stone_brazier",
			() -> new BlockItem(ModBlocks.STONE_BRAZIER.get(),
					new Item.Properties().group(ModItemGroups.MOD_ITEM_GROUP_BUILDING_BLOCK)));

	public static final RegistryObject<BlockItem> STONE_PILLAR = ITEMS.register("stone_pillar",
			() -> new BlockItem(ModBlocks.STONE_PILLAR.get(),
					new Item.Properties().group(ModItemGroups.MOD_ITEM_GROUP_BUILDING_BLOCK)));

	public static final RegistryObject<BlockItem> BRICK_SLOPE = ITEMS.register("brick_slope",
			() -> new BlockItem(ModBlocks.BRICK_SLOPE.get(),
					new Item.Properties().group(ModItemGroups.MOD_ITEM_GROUP_BUILDING_BLOCK)));

	public static final RegistryObject<BlockItem> STONEBRICK_SLOPE = ITEMS.register("stonebrick_slope",
			() -> new BlockItem(ModBlocks.STONEBRICK_SLOPE.get(),
					new Item.Properties().group(ModItemGroups.MOD_ITEM_GROUP_BUILDING_BLOCK)));

	public static final RegistryObject<BlockItem> FLOATING_BRIDGE = ITEMS.register("floating_bridge",
			() -> new BlockItem(ModBlocks.FLOATING_BRIDGE.get(),
					new Item.Properties().group(ModItemGroups.MOD_ITEM_GROUP_BUILDING_BLOCK)));

	public static final RegistryObject<BlockItem> GLOW_GLASS = ITEMS.register("glow_glass",
			() -> new BlockItem(ModBlocks.GLOW_GLASS.get(),
					new Item.Properties().group(ModItemGroups.MOD_ITEM_GROUP_BUILDING_BLOCK)));

	public static final RegistryObject<BlockItem> GLOW_WHITE_STAINED_GLASS = ITEMS.register("glow_white_stained_glass",
			() -> new BlockItem(ModBlocks.GLOW_WHITE_STAINED_GLASS.get(),
					new Item.Properties().group(ModItemGroups.MOD_ITEM_GROUP_BUILDING_BLOCK)));

	public static final RegistryObject<BlockItem> GLOW_ORANGE_STAINED_GLASS = ITEMS
			.register("glow_orange_stained_glass", () -> new BlockItem(ModBlocks.GLOW_ORANGE_STAINED_GLASS.get(),
					new Item.Properties().group(ModItemGroups.MOD_ITEM_GROUP_BUILDING_BLOCK)));

	public static final RegistryObject<BlockItem> GLOW_MAGENTA_STAINED_GLASS = ITEMS
			.register("glow_magenta_stained_glass", () -> new BlockItem(ModBlocks.GLOW_MAGENTA_STAINED_GLASS.get(),
					new Item.Properties().group(ModItemGroups.MOD_ITEM_GROUP_BUILDING_BLOCK)));

	public static final RegistryObject<BlockItem> GLOW_LIGHT_BLUE_STAINED_GLASS = ITEMS.register(
			"glow_light_blue_stained_glass", () -> new BlockItem(ModBlocks.GLOW_LIGHT_BLUE_STAINED_GLASS.get(),
					new Item.Properties().group(ModItemGroups.MOD_ITEM_GROUP_BUILDING_BLOCK)));

	public static final RegistryObject<BlockItem> GLOW_YELLOW_STAINED_GLASS = ITEMS
			.register("glow_yellow_stained_glass", () -> new BlockItem(ModBlocks.GLOW_YELLOW_STAINED_GLASS.get(),
					new Item.Properties().group(ModItemGroups.MOD_ITEM_GROUP_BUILDING_BLOCK)));

	public static final RegistryObject<BlockItem> GLOW_LIME_STAINED_GLASS = ITEMS.register("glow_lime_stained_glass",
			() -> new BlockItem(ModBlocks.GLOW_LIME_STAINED_GLASS.get(),
					new Item.Properties().group(ModItemGroups.MOD_ITEM_GROUP_BUILDING_BLOCK)));

	public static final RegistryObject<BlockItem> GLOW_PINK_STAINED_GLASS = ITEMS.register("glow_pink_stained_glass",
			() -> new BlockItem(ModBlocks.GLOW_PINK_STAINED_GLASS.get(),
					new Item.Properties().group(ModItemGroups.MOD_ITEM_GROUP_BUILDING_BLOCK)));

	public static final RegistryObject<BlockItem> GLOW_GRAY_STAINED_GLASS = ITEMS.register("glow_gray_stained_glass",
			() -> new BlockItem(ModBlocks.GLOW_GRAY_STAINED_GLASS.get(),
					new Item.Properties().group(ModItemGroups.MOD_ITEM_GROUP_BUILDING_BLOCK)));

	public static final RegistryObject<BlockItem> GLOW_LIGHT_GRAY_STAINED_GLASS = ITEMS.register(
			"glow_light_gray_stained_glass", () -> new BlockItem(ModBlocks.GLOW_LIGHT_GRAY_STAINED_GLASS.get(),
					new Item.Properties().group(ModItemGroups.MOD_ITEM_GROUP_BUILDING_BLOCK)));

	public static final RegistryObject<BlockItem> GLOW_CYAN_STAINED_GLASS = ITEMS.register("glow_cyan_stained_glass",
			() -> new BlockItem(ModBlocks.GLOW_CYAN_STAINED_GLASS.get(),
					new Item.Properties().group(ModItemGroups.MOD_ITEM_GROUP_BUILDING_BLOCK)));

	public static final RegistryObject<BlockItem> GLOW_PURPLE_STAINED_GLASS = ITEMS
			.register("glow_purple_stained_glass", () -> new BlockItem(ModBlocks.GLOW_PURPLE_STAINED_GLASS.get(),
					new Item.Properties().group(ModItemGroups.MOD_ITEM_GROUP_BUILDING_BLOCK)));

	public static final RegistryObject<BlockItem> GLOW_BLUE_STAINED_GLASS = ITEMS.register("glow_blue_stained_glass",
			() -> new BlockItem(ModBlocks.GLOW_BLUE_STAINED_GLASS.get(),
					new Item.Properties().group(ModItemGroups.MOD_ITEM_GROUP_BUILDING_BLOCK)));

	public static final RegistryObject<BlockItem> GLOW_BROWN_STAINED_GLASS = ITEMS.register("glow_brown_stained_glass",
			() -> new BlockItem(ModBlocks.GLOW_BROWN_STAINED_GLASS.get(),
					new Item.Properties().group(ModItemGroups.MOD_ITEM_GROUP_BUILDING_BLOCK)));

	public static final RegistryObject<BlockItem> GLOW_GREEN_STAINED_GLASS = ITEMS.register("glow_green_stained_glass",
			() -> new BlockItem(ModBlocks.GLOW_GREEN_STAINED_GLASS.get(),
					new Item.Properties().group(ModItemGroups.MOD_ITEM_GROUP_BUILDING_BLOCK)));

	public static final RegistryObject<BlockItem> GLOW_RED_STAINED_GLASS = ITEMS.register("glow_red_stained_glass",
			() -> new BlockItem(ModBlocks.GLOW_RED_STAINED_GLASS.get(),
					new Item.Properties().group(ModItemGroups.MOD_ITEM_GROUP_BUILDING_BLOCK)));

	public static final RegistryObject<BlockItem> GLOW_BLACK_STAINED_GLASS = ITEMS.register("glow_black_stained_glass",
			() -> new BlockItem(ModBlocks.GLOW_BLACK_STAINED_GLASS.get(),
					new Item.Properties().group(ModItemGroups.MOD_ITEM_GROUP_BUILDING_BLOCK)));

	public static final RegistryObject<BlockItem> PERFORATED_SANDSTONE = ITEMS.register("perforated_sandstone",
			() -> new BlockItem(ModBlocks.PERFORATED_SANDSTONE.get(),
					new Item.Properties().group(ModItemGroups.MOD_ITEM_GROUP_BUILDING_BLOCK)));

	// Container
	public static final RegistryObject<BlockItem> GREEDY_CHEST = ITEMS.register("greedy_chest",
			() -> new BlockItem(ModBlocks.GREEDY_CHEST.get(),
					new Item.Properties().maxStackSize(1).group(ModItemGroups.MOD_ITEM_GROUP_SEAL_ITEM)));

	public static final RegistryObject<BlockItem> CRATE = ITEMS.register("crate",
			() -> new BlockItem(ModBlocks.CRATE.get(),
					new Item.Properties().maxStackSize(1).group(ModItemGroups.MOD_ITEM_GROUP_INSTRUMENT)));

	public static final RegistryObject<BlockItem> CORPSE_OF_AN_UNKNOWN_TRAVELER = ITEMS.register(
			"corpse_of_an_unknown_traveler", () -> new BlockItem(ModBlocks.CORPSE_OF_AN_UNKNOWN_TRAVELER.get(),
					new Item.Properties().maxStackSize(1).group(ModItemGroups.MOD_ITEM_GROUP_BUILDING_BLOCK)));

	// Tree
	public static final RegistryObject<BlockItem> LAUREL_LOG = ITEMS.register("laurel_log",
			() -> new BlockItem(ModBlocks.LAUREL_LOG.get(),
					new Item.Properties().group(ModItemGroups.MOD_ITEM_GROUP_BUILDING_BLOCK)));

	public static final RegistryObject<BlockItem> LAUREL_LEAVES = ITEMS.register("laurel_leaves",
			() -> new BlockItem(ModBlocks.LAUREL_LEAVES.get(),
					new Item.Properties().group(ModItemGroups.MOD_ITEM_GROUP_BUILDING_BLOCK)));

	public static final RegistryObject<BlockItem> LAUREL_SAPLING = ITEMS.register("laurel_sapling",
			() -> new BlockItem(ModBlocks.LAUREL_SAPLING.get(),
					new Item.Properties().group(ModItemGroups.MOD_ITEM_GROUP_PLANT)));

	// Plants
	public static final RegistryObject<Item> LAUREL_FLOWER = ITEMS.register("laurel_flower",
			() -> new Item(new Item.Properties().group(ModItemGroups.MOD_ITEM_GROUP_PLANT)));

	// Tools
	public static final RegistryObject<PickaxeItem> COPPER_PICKAXE = ITEMS.register("copper_pickaxe",
			() -> new PickaxeItem(ModItemTiers.COPPER, 1, -2.8F,
					new Item.Properties().group(ModItemGroups.MOD_ITEM_GROUP_TOOL)));

	public static final RegistryObject<AxeItem> COPPER_AXE = ITEMS.register("copper_axe",
			() -> new AxeItem(ModItemTiers.COPPER, 6.0F, -3.2F,
					new Item.Properties().group(ModItemGroups.MOD_ITEM_GROUP_TOOL)));

	public static final RegistryObject<ShovelItem> COPPER_SHOVEL = ITEMS.register("copper_shovel",
			() -> new ShovelItem(ModItemTiers.COPPER, 1.5F, -3.0F,
					new Item.Properties().group(ModItemGroups.MOD_ITEM_GROUP_TOOL)));

	public static final RegistryObject<HoeItem> COPPER_HOE = ITEMS.register("copper_hoe",
			() -> new HoeItem(ModItemTiers.COPPER, -1.4F,
					new Item.Properties().group(ModItemGroups.MOD_ITEM_GROUP_TOOL)));

	public static final RegistryObject<SwordItem> COPPER_SWORD = ITEMS.register("copper_sword",
			() -> new SwordItem(ModItemTiers.COPPER, 3, -2.4F,
					new Item.Properties().group(ModItemGroups.MOD_ITEM_GROUP_TOOL)));

	public static final RegistryObject<PickaxeItem> SILVER_PICKAXE = ITEMS.register("silver_pickaxe",
			() -> new PickaxeItem(ModItemTiers.SILVER, 1, -2.8F,
					new Item.Properties().group(ModItemGroups.MOD_ITEM_GROUP_TOOL)));

	public static final RegistryObject<AxeItem> SILVER_AXE = ITEMS.register("silver_axe",
			() -> new AxeItem(ModItemTiers.SILVER, 6.0F, -3.2F,
					new Item.Properties().group(ModItemGroups.MOD_ITEM_GROUP_TOOL)));

	public static final RegistryObject<ShovelItem> SILVER_SHOVEL = ITEMS.register("silver_shovel",
			() -> new ShovelItem(ModItemTiers.SILVER, 1.5F, -3.0F,
					new Item.Properties().group(ModItemGroups.MOD_ITEM_GROUP_TOOL)));

	public static final RegistryObject<HoeItem> SILVER_HOE = ITEMS.register("silver_hoe",
			() -> new HoeItem(ModItemTiers.SILVER, -1.0F,
					new Item.Properties().group(ModItemGroups.MOD_ITEM_GROUP_TOOL)));

	public static final RegistryObject<SwordItem> SILVER_SWORD = ITEMS.register("silver_sword",
			() -> new SwordItem(ModItemTiers.SILVER, 3, -2.4F,
					new Item.Properties().group(ModItemGroups.MOD_ITEM_GROUP_TOOL)));

	public static final RegistryObject<PickaxeItem> MITHRIL_PICKAXE = ITEMS.register("mithril_pickaxe",
			() -> new PickaxeItem(ModItemTiers.MITHRIL, 1, -2.8F,
					new Item.Properties().group(ModItemGroups.MOD_ITEM_GROUP_TOOL)));

	public static final RegistryObject<AxeItem> MITHRIL_AXE = ITEMS.register("mithril_axe",
			() -> new AxeItem(ModItemTiers.MITHRIL, 6.0F, -2.9F,
					new Item.Properties().group(ModItemGroups.MOD_ITEM_GROUP_TOOL)));

	public static final RegistryObject<ShovelItem> MITHRIL_SHOVEL = ITEMS.register("mithril_shovel",
			() -> new ShovelItem(ModItemTiers.MITHRIL, 1.5F, -3.0F,
					new Item.Properties().group(ModItemGroups.MOD_ITEM_GROUP_TOOL)));

	public static final RegistryObject<HoeItem> MITHRIL_HOE = ITEMS.register("mithril_hoe",
			() -> new HoeItem(ModItemTiers.MITHRIL, 1.0F,
					new Item.Properties().group(ModItemGroups.MOD_ITEM_GROUP_TOOL)));

	public static final RegistryObject<SwordItem> MITHRIL_SWORD = ITEMS.register("mithril_sword",
			() -> new SwordItem(ModItemTiers.MITHRIL, 3, -2.4F,
					new Item.Properties().group(ModItemGroups.MOD_ITEM_GROUP_TOOL)));
	
	public static final RegistryObject<SacrificialKnifeItem> WOODEN_SACRIFICIAL_KNIFE = ITEMS.register("wooden_sacrificial_knife",
			() -> new SacrificialKnifeItem(ItemTier.WOOD, 1.0F, -0.2F,
					new Item.Properties().defaultMaxDamage(6).group(ModItemGroups.MOD_ITEM_GROUP_TOOL)));
	
	public static final RegistryObject<SacrificialKnifeItem> STONE_SACRIFICIAL_KNIFE = ITEMS.register("stone_sacrificial_knife",
			() -> new SacrificialKnifeItem(ItemTier.STONE, 1.5F, -1.1F,
					new Item.Properties().defaultMaxDamage(12).group(ModItemGroups.MOD_ITEM_GROUP_TOOL)));
	
	public static final RegistryObject<SacrificialKnifeItem> COPPER_SACRIFICIAL_KNIFE = ITEMS.register("copper_sacrificial_knife",
			() -> new SacrificialKnifeItem(ModItemTiers.COPPER, 1.4F, -1.2F,
					new Item.Properties().defaultMaxDamage(60).group(ModItemGroups.MOD_ITEM_GROUP_TOOL)));
	
	public static final RegistryObject<SacrificialKnifeItem> IRON_SACRIFICIAL_KNIFE = ITEMS.register("iron_sacrificial_knife",
			() -> new SacrificialKnifeItem(ItemTier.IRON, 1.5F, -1.0F,
					new Item.Properties().defaultMaxDamage(75).group(ModItemGroups.MOD_ITEM_GROUP_TOOL)));
	
	public static final RegistryObject<SacrificialKnifeItem> SILVER_SACRIFICIAL_KNIFE = ITEMS.register("silver_sacrificial_knife",
			() -> new SacrificialKnifeItem(ModItemTiers.SILVER, 1.0F, -1.4F,
					new Item.Properties().defaultMaxDamage(20).group(ModItemGroups.MOD_ITEM_GROUP_TOOL)));
	
	public static final RegistryObject<SacrificialKnifeItem> GOLD_SACRIFICIAL_KNIFE = ITEMS.register("gold_sacrificial_knife",
			() -> new SacrificialKnifeItem(ItemTier.GOLD, 2.5F, -1.5F,
					new Item.Properties().defaultMaxDamage(22).group(ModItemGroups.MOD_ITEM_GROUP_TOOL)));
	
	public static final RegistryObject<SacrificialKnifeItem> DIAMOND_SACRIFICIAL_KNIFE = ITEMS.register("diamond_sacrificial_knife",
			() -> new SacrificialKnifeItem(ItemTier.DIAMOND, 1.5F, -0.8F,
					new Item.Properties().defaultMaxDamage(220).group(ModItemGroups.MOD_ITEM_GROUP_TOOL)));
	
	public static final RegistryObject<SacrificialKnifeItem> MITHRIL_SACRIFICIAL_KNIFE = ITEMS.register("mithril_sacrificial_knife",
			() -> new SacrificialKnifeItem(ModItemTiers.MITHRIL, 1.5F, -0.5F,
					new Item.Properties().defaultMaxDamage(72).group(ModItemGroups.MOD_ITEM_GROUP_TOOL)));
	
	public static final RegistryObject<CrowbarItem> WOODEN_CROWBAR = ITEMS.register("wooden_crowbar",
			() -> new CrowbarItem(ItemTier.WOOD, 3.5F, -2.6F,
					new Item.Properties().defaultMaxDamage(6).group(ModItemGroups.MOD_ITEM_GROUP_TOOL)));
	
	public static final RegistryObject<CrowbarItem> STONE_CROWBAR = ITEMS.register("stone_crowbar",
			() -> new CrowbarItem(ItemTier.STONE, 3.5F, -2.6F,
					new Item.Properties().defaultMaxDamage(12).group(ModItemGroups.MOD_ITEM_GROUP_TOOL)));
	
	public static final RegistryObject<CrowbarItem> COPPER_CROWBAR = ITEMS.register("copper_crowbar",
			() -> new CrowbarItem(ModItemTiers.COPPER, 3.4F, -2.6F,
					new Item.Properties().group(ModItemGroups.MOD_ITEM_GROUP_TOOL)));
	
	public static final RegistryObject<CrowbarItem> IRON_CROWBAR = ITEMS.register("iron_crowbar",
			() -> new CrowbarItem(ItemTier.IRON, 3.5F, -2.6F,
					new Item.Properties().group(ModItemGroups.MOD_ITEM_GROUP_TOOL)));
	
	public static final RegistryObject<CrowbarItem> SILVER_CROWBAR = ITEMS.register("silver_crowbar",
			() -> new CrowbarItem(ModItemTiers.SILVER, 3.5F, -2.6F,
					new Item.Properties().defaultMaxDamage(20).group(ModItemGroups.MOD_ITEM_GROUP_TOOL)));
	
	public static final RegistryObject<CrowbarItem> GOLD_CROWBAR = ITEMS.register("gold_crowbar",
			() -> new CrowbarItem(ItemTier.GOLD, 3.5F, -2.6F,
					new Item.Properties().defaultMaxDamage(22).group(ModItemGroups.MOD_ITEM_GROUP_TOOL)));
	
	public static final RegistryObject<CrowbarItem> DIAMOND_CROWBAR = ITEMS.register("diamond_crowbar",
			() -> new CrowbarItem(ItemTier.DIAMOND, 3.5F, -2.6F,
					new Item.Properties().group(ModItemGroups.MOD_ITEM_GROUP_TOOL)));
	
	public static final RegistryObject<CrowbarItem> MITHRIL_CROWBAR = ITEMS.register("mithril_crowbar",
			() -> new CrowbarItem(ModItemTiers.MITHRIL, 3.5F, -2.6F,
					new Item.Properties().defaultMaxDamage(72).group(ModItemGroups.MOD_ITEM_GROUP_TOOL)));

	// Egg
	public static final RegistryObject<ModSpawnEggItem> SWORD_FISH_EGG = ITEMS.register("sword_fish_egg",
			() -> new ModSpawnEggItem(ModEntityTypes.SWORD_FISH_ENTITY, 0xA3A687, 0x4D99BE,
					new Item.Properties().group(ModItemGroups.MOD_ITEM_GROUP_EGG)));

	// Disc
	public static final RegistryObject<ModMusicDiscDesc2Item> DISC_AT_LAST = ITEMS.register("disc_at_last",
			() -> new ModMusicDiscDesc2Item(6, ModSounds.MUSIC_AT_LAST, new Item.Properties().maxStackSize(1)
					.rarity(Rarity.RARE).group(ModItemGroups.MOD_ITEM_GROUP_OTHER)));

	public static final RegistryObject<ModMusicDiscItem> DISC_MY_SADNESS_IS_MADE_OF_WATER = ITEMS.register(
			"disc_my_sadness_is_made_of_water",
			() -> new ModMusicDiscItem(6, ModSounds.MUSIC_MY_SADNESS_IS_MADE_OF_WATER, new Item.Properties()
					.maxStackSize(1).rarity(Rarity.RARE).group(ModItemGroups.MOD_ITEM_GROUP_OTHER)));

	public static final RegistryObject<ModMusicDiscDesc2Item> DISC_PAPER_PLANE_S_ADVENTURE = ITEMS.register(
			"disc_paper_plane_s_adventure",
			() -> new ModMusicDiscDesc2Item(6, ModSounds.MUSIC_PAPER_PLANE_S_ADVENTURE, new Item.Properties()
					.maxStackSize(1).rarity(Rarity.RARE).group(ModItemGroups.MOD_ITEM_GROUP_OTHER)));

	// Temp below
	// Food
	public static final RegistryObject<Item> RYE_BREAD = ITEMS.register("rye_bread",
			() -> new Item(new Item.Properties().food(ModFoods.RYE_BREAD).group(ModItemGroups.MOD_ITEM_GROUP_FOOD)));

	// Posion
	public static final RegistryObject<Item> POTION_AUGUR = ITEMS.register("potion_augur",
			() -> new Item(new Item.Properties().maxStackSize(1).group(ModItemGroups.MOD_ITEM_GROUP_POTION)));

	// Books_And_Letters
	public static final RegistryObject<WorldRoamBookItem> WORLD_ROAM_BOOK = ITEMS.register("world_roam_book",
			() -> new WorldRoamBookItem(
					new Item.Properties().maxStackSize(1).group(ModItemGroups.MOD_ITEM_GROUP_BOOK_AND_LETTER)));

	// Seal_Items
	public static final RegistryObject<SealItem30782> SEAL_ITEM_3_0782 = ITEMS.register("seal_item_3_0782",
			() -> new SealItem30782(
					new Item.Properties().maxStackSize(1).group(ModItemGroups.MOD_ITEM_GROUP_SEAL_ITEM)));
}
